package ejb.producto;

import java.util.ArrayList;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import clases.Producto;


/**
 * Session Bean implementation class UsuariosBean
 */
@Stateless(name="EJBProducto", mappedName="EJBProducto")
public class EjbProducto implements EjbProductoRemote {

    @PersistenceContext(unitName = "EjbPersistence")
    private EntityManager entityManager;
    
	private List<Producto> productos = new ArrayList<Producto>();
	
    public EjbProducto() {
        
    }

    public void modificarProducto(Producto aux){
    	Producto producto = entityManager.find(Producto.class, aux.getId());
    	producto.setNombre(aux.getNombre());
    	producto.setDescripcion(aux.getDescripcion());
    	producto.setCategoria(aux.getCategoria());
    	producto.setStock(aux.getStock());
    	producto.setPrecio(aux.getPrecio());
    }
    
	public void eliminarProducto(String id){
		Producto producto = entityManager.find(Producto.class, id);
		entityManager.remove(producto);
		};
		
	public List<Producto> listarProductos(){
		String sentenciaSql = "select p from " + Producto.class.getName() + " p";
		Query query = entityManager.createQuery(sentenciaSql);
		List<Producto> productos = (List<Producto>) query.getResultList();
		return productos;
	};
	public void agregarProducto(Producto auxProducto){
		entityManager.persist(auxProducto);
	};

}

